let num:number = 123;


num = 123333

// num = ''; // 报错

num = 0x11111 // 十六进制
num = 0b11111 // 二进制
num = 0o11111 // 八进制




const obj={
    name:'张三'
}

let mykey:symbol = Symbol()
let mykey2:symbol = Symbol()

// mykey = '' // 错误
// mykey = 123 // 错误
mykey = Symbol('xxxx')

const myobj = {...obj,[mykey]:'李四'}


// 什么时候会出现undefined
// 1.变量声明了 但是没有赋值
// 2.函数没有返回值
// 3.对象中不存在的属性
let name:undefined;

// name = '张三' // 报错
name = undefined

function getName(){
    console.log('start');
    setTimeout(()=>{
        return '张三'
    },1000)
    console.log('end');
}

console.log(getName())


const obj2 = {
    name:'张三'
}

// console.log(obj2.age) // TS报错 但是在js中就是返回的undefined

console.log('====================================')
console.log(typeof null) // object null代表的是一个空对象指针
console.log('====================================')


export {}

